<?php
/**
 * @author Cyril Gabathuler
 * @since version - 31.05.2007
 */

   require_once('frontend/modules/util/module.php');
   require_once('backend/Spieler.php');
   require_once('backend/Mannschaft.php');
   require_once('backend/Form.php');
   require_once('backend/Status.php');
   require_once('frontend/modules/util/Util.php');

 class AddSpieler implements Module {

 	private $failures = array();

	public function display() {
		if($_GET['action'] == 'save') {
			if($this->checkOnError()) {

			} else {
				$this->insertSpieler();
			}

		}
		include('templates/addSpieler.tpl');
	}

	private function checkOnError() {
		if($_POST['name']=='') {
			$this->failures[] = 'Sie haben keinen Spielernamen eingegeben.';
		}
		if($_POST['spielerid'] == '') {
			$this->failures[] = 'Sie haben keine SpielerID eingegeben.';
		}
		if($_POST['jahre'] == '') {
			$this->failures[] = 'Sie haben beim Alter keine Jahreszahl eingegeben.';
		}
		if($_POST['tage'] == '') {
			$this->failures[] = 'Sie haben beim Alter keine Tage eingegeben.';
		}

		if(count($this->failures) > 0)
			return true;
		else
			return false;

	}

	private function insertSpieler() {

		global $Manager;
		$Form = $Manager->getTable("Form")->find($_POST['form']);
		$Status = $Manager->getTable("Status")->find($_POST['status']);
		$Mannschaft = $Manager->getTable( "Mannschaft" )->find( Util::getMannschaftId() );

		$names = Util::cutName($_POST['name']);
		$geburtstag = Util::calculateGeburtstag($_POST['jahre'], $_POST['tage']);
	 	$Spieler = new Spieler();
		$Spieler->Mannschaft = $Mannschaft;
		$Spieler->vorname = $names[0];
		$Spieler->nachname = $names[1];
		$Spieler->hattrickSpieler_id = $_POST['spielerid'];
		$Spieler->geburtstag = $geburtstag;
		$Spieler->bemerkung = htmlspecialchars($_POST['bemerkung']);
		$Spieler->aktiv = "1";
		$Spieler->Form = $Form;
		$Spieler->Status = $Status;
		$Spieler->save();

		Util::information("Sie haben erfolgreich einen neuen Spieler hinzugef&uuml;gt.");

	}

	private function getForm() {
		$Query = new Doctrine_Query();
		$Form = $Query->select( "f.id, f.bezeichnung")
			->from( "Form f" )
			->execute();
		if($Form->count() > 0) {
			return $Form;
		}
	}

	private function getStatus() {
		$Query = new Doctrine_Query();
		$Status = $Query->select( "s.id, s.bezeichnung")
			->from( "Status s" )
			->execute();
		if($Status->count() > 0) {
			return $Status;
		}
	}
 }
?>
